package job;

import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Set;
import java.util.TreeSet;

/**
 * @author wq
 */
public class Youqusort {
    /*
    思路 先找出最大的 最大的一般是不需要移动的
    找第二大的  如果它在第一大的后面 则需要移动，一次类推

    * */


    public static void main(String[] args) {

        int[] num=new int[]{6,1,7,2,5,4};
        int n=num.length;
        int[] sorted=new int[n];
        System.arraycopy(num,0,sorted,0,n);
        Arrays.sort(sorted);

/*      int cnt=0;
        TreeSet<Integer> set=new TreeSet<>();
        set.add(n);
        for(int i=n-1;i>=0;i--){
            for(int j=0;j<n;j++){
                if(num[j]==sorted[i]){
                    int index=set.first();
                    if(j>index){
                        cnt++;
                    }
                    set.add(j);
                    break;
                }
            }
        }

        System.out.println(cnt);

    }
    */

        /*
        统计的是不需要的元素
        从后往前找最大的元素，则在该元素后面均是需要移动的
        * */
        int cnt=0;
        int j=n-1;
        for(int i=n-1;i>=0;i--){
            if(num[i]==sorted[j]){
                cnt++;
                j--;
            }
        }
        System.out.println(n-cnt);
    }
}
